package com.fufan.mtsaas.modules.newtech.xjstechhis.bo.request;

import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fufan.mtsaas.modules.common.bo.request.ReqBasePage;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * @author Liby
 * @date 2024-12-16
 */
@Data
@ApiModel(description = "XJSTech请求")
public class XjsTechHisQueryRequest extends ReqBasePage {

    /**
     * 项目id
     */
    @ApiModelProperty(value = "项目id")
    private Integer id;

    /**
     * 项目名称
     */
    @ApiModelProperty(value = "项目名称")
    private String name;

    /**
     * 项目分类
     */
    @ApiModelProperty(value = "项目分类 1-非限制类，2-限制类，3-上海首家")
    private Integer projectClass;

    /**
     * 流转状态
     */
    @ApiModelProperty(value = "流转状态：80-年审下发；90-科室主任审批；100-医疗技术临床应用管理委员会审批 110: 已完成年审")
    private Integer status;

    /**
     * 申报开始时间
     */
    @ApiModelProperty(value = "申报开始时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date startCreateTime;

    /**
     * 申报结束时间
     */
    @ApiModelProperty(value = "申报结束时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date endCreateTime;

    /**
     * 技术分类
     */
    @ApiModelProperty(value = "技术分类1-手术操作，2-检验检查，3-其他治疗技术")
    private Integer techType;

    /**
     * 科室Id
     */
    @ApiModelProperty(value = "科室Id")
    private Long applyDeptId;

    /**
     * 申报人
     */
    @ApiModelProperty(value = "申报人")
    private Long applyUser;

    /**
     * 开通时间开始时间
     */
    @ApiModelProperty(value = "开通时间开始时间")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date startOpeningTime;

    /**
     * 开通时间结束时间
     */
    @ApiModelProperty(value = "开通时间结束时间")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date endOpeningTime;

    @ApiModelProperty(value = "当前登录的用户ID", hidden = true)
    private String staffId;

    @ApiModelProperty(value = "当前查询类别", hidden = true)
    private String queryType;

    /**
     * 最后一次年审时间
     */
    @ApiModelProperty(value = "最后一次年审时间", hidden = true)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date lastYearAuditTime;
}
